package com.shangke.corejava.ch13;

public class ThreadJoin extends Thread {
	private int count;

	@Override
	public void run() {
		while (count++ <= 10) {
			try {
				Thread.sleep(1000);
			} catch (InterruptedException e) { // 线程中断异常

			}

			System.out.println(getId() + "：" + count);
		}
		System.out.println("子线程执行完毕");
	}

	public static void main(String[] args) {
		ThreadJoin threadJoin = new ThreadJoin();
		threadJoin.start();
		try {
			// 把子线程与主线程进行合并，先执行子线程，再执行主线程
			// 无参数时，先执行完子线程，再执行主线程
			// 有参数时，先执行子线程一段时间，再执行主线程
			threadJoin.join();
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
		
		//threadJoin.interrupt();  //可以中断一个在 sleep 睡眠状态的线程，用于中断 sleep 方法的执行

		System.out.println("主线程结束");
	}

}
